Latviešu

Iepazīstiet dinamisko ļaundabīgās programmatūras analīzi. Uzziniet, kā droši palaist un novērot ļaundabīgu programmatūru, lai izprastu tās uzvedību, ietekmi un mērķi.

Ļaunprogrammatūras analīzes atklāšana: padziļināts ieskats dinamiskās analīzes tehnikās

Kiberdrošības nerimstošajā kaķa un peles spēlē ir ļoti svarīgi izprast savu pretinieku. Ļaunprogrammatūra jeb ļaundabīga programmatūra ir galvenais ierocis kibernoziedznieku, valsts atbalstītu grupējumu un haktīvistu arsenālā visā pasaulē. Lai aizsargātos pret šiem draudiem, mums tie ir jāizpēta, jāizprot to motīvi un jāuzzina, kā tie darbojas. Šī ir ļaunprogrammatūras analīzes joma, kas ir kritiski svarīga disciplīna jebkuram mūsdienu drošības profesionālim. Lai gan ir vairāki veidi, kā tam pieiet, šodien mēs padziļināti aplūkosim vienu no atklājošākajām metodēm: dinamisko analīzi.

Kas ir ļaunprogrammatūras analīze? Ātrs atgādinājums

Savā būtībā ļaunprogrammatūras analīze ir process, kurā tiek pētīts ļaundabīgas programmatūras paraugs, lai izprastu tā izcelsmi, funkcionalitāti un iespējamo ietekmi. Galvenais mērķis ir iegūt praktiski izmantojamu izlūkinformāciju, ko var izmantot, lai uzlabotu aizsardzību, reaģētu uz incidentiem un proaktīvi meklētu draudus. Šis process parasti iedalās divās plašās kategorijās:

Lai gan statiskā analīze sniedz pamata izpratni, to var apgrūtināt tādas metodes kā koda maskēšana (obfuscation) un pakošana (packing). Tieši šeit izceļas dinamiskā analīze, kas ļauj mums redzēt, ko ļaunprogrammatūra patiesībā dara, kad tā tiek palaista.

Ļaunprātības atšifrēšana kustībā: Izpratne par dinamisko analīzi

Dinamiskā ļaunprogrammatūras analīze, ko bieži dēvē par uzvedības analīzi, ir māksla un zinātne novērot ļaunprogrammatūru tās darbības laikā. Tā vietā, lai pētītu dezasemblēta koda rindas, analītiķis darbojas kā digitālais biologs, ievietojot paraugu Petri trauciņā (drošā virtuālā vidē) un rūpīgi dokumentējot tā darbības un mijiedarbības. Tā atbild uz tādiem kritiskiem jautājumiem kā:

Statiskā vs. dinamiskā analīze: Divu metodoloģiju salīdzinājums

Lai patiesi novērtētu dinamisko analīzi, ir lietderīgi to tieši salīdzināt ar tās statisko līdzinieci. Tās nav savstarpēji izslēdzošas; patiesībā visefektīvākā analīze bieži ietver abu metožu kombināciju.

Dinamiskās analīzes mērķi

Kad analītiķis veic dinamisko analīzi, viņa misija ir iegūt konkrētu izlūkinformāciju. Galvenie mērķi ietver:

Sava cietokšņa būvēšana: drošas analīzes vides izveide

Brīdinājums: Šī ir procesa kritiskākā daļa. Nekad, nekad nepalaidiet aizdomīgu failu savā personīgajā vai korporatīvajā datorā. Viss dinamiskās analīzes priekšnoteikums balstās uz pilnībā izolētas un kontrolētas laboratorijas vides izveidi, ko parasti sauc par smilškasti (sandbox). Mērķis ir ļaut ļaunprogrammatūrai brīvi darboties šajā kontrolētajā telpā bez riska, ka tā izkļūs un nodarīs reālu kaitējumu.

Laboratorijas sirds: Virtuālā mašīna (VM)

Virtualizācija ir ļaunprogrammatūras analīzes laboratorijas stūrakmens. Virtuālā mašīna (VM) ir pilnībā emulēta datorsistēma, kas darbojas virs jūsu fiziskās mašīnas (resursdatora). Programmatūra, piemēram, Oracle VM VirtualBox (bezmaksas) vai VMware Workstation Player/Pro, ir nozares standarti.

Kāpēc izmantot VM?

Jūsu analīzes VM vajadzētu konfigurēt tā, lai tā atdarinātu tipisku korporatīvo vidi, lai ļaunprogrammatūra justos "kā mājās". Tas ietver tādu izplatītu programmu kā Microsoft Office, Adobe Reader un tīmekļa pārlūkprogrammas instalēšanu.

Tīkla izolācija: Digitālo ētera viļņu kontrole

VM tīkla savienojuma kontrole ir ļoti svarīga. Jūs vēlaties novērot tās tīkla trafiku, bet nevēlaties, lai tā veiksmīgi uzbruktu citām mašīnām jūsu lokālajā tīklā vai brīdinātu attālinātu uzbrucēju. Ir vairāki tīkla konfigurācijas līmeņi:

Analītiķa rīkkopa: Būtiskākā programmatūra

Pirms veicat savu "tīro" momentuzņēmumu, jums ir jāapbruņo sava analīzes VM ar pareizajiem rīkiem. Šī rīkkopa būs jūsu acis un ausis analīzes laikā.

Medības sākas: soli pa solim ceļvedis dinamiskajā analīzē

Kad jūsu drošā laboratorija ir sagatavota, ir laiks sākt analīzi. Process ir metodisks un prasa rūpīgu dokumentāciju.

1. fāze: Sagatavošanās un bāzes līnija

  1. Atgriezties pie tīrā momentuzņēmuma: Vienmēr sāciet ar zināmu, labu stāvokli. Atgrieziet savu VM tīrajā momentuzņēmumā, ko izveidojāt pēc tās iestatīšanas.
  2. Sākt bāzes līnijas tveršanu: Palaidiet rīku, piemēram, Regshot, un uzņemiet "1st shot" (pirmo uzņēmumu). Tas izveido jūsu failu sistēmas un reģistra bāzes līniju.
  3. Palaist uzraudzības rīkus: Atveriet Process Monitor un Wireshark un sāciet tvert notikumus. Konfigurējiet filtrus ProcMon, lai koncentrētos uz vēl neizpildīto ļaunprogrammatūras procesu, bet esiet gatavi tos notīrīt, ja tas rada vai injicējas citos procesos.
  4. Pārsūtīt paraugu: Droši pārsūtiet ļaunprogrammatūras paraugu uz VM. Izplatīta metode ir koplietojama mape (kas nekavējoties jāatspējo pēc tam) vai vienkārša vilkšana un nomešana.

2. fāze: Izpilde un novērošana

Šis ir patiesības mirklis. Veiciet dubultklikšķi uz ļaunprogrammatūras parauga vai izpildiet to no komandrindas, atkarībā no faila tipa. Jūsu uzdevums tagad ir būt pasīvam, bet modram novērotājam. Ļaujiet ļaunprogrammatūrai darboties. Dažreiz tās darbības ir tūlītējas; citreiz tai var būt miega taimeris, un jums būs jāgaida. Ja nepieciešams, mijiedarbojieties ar sistēmu (piemēram, noklikšķinot uz viltus kļūdas ziņojuma, ko tā rada), lai izraisītu turpmāku uzvedību.

3. fāze: Galveno uzvedības indikatoru uzraudzība

Šī ir analīzes būtība, kur jūs korelējat datus no visiem saviem uzraudzības rīkiem, lai izveidotu priekšstatu par ļaunprogrammatūras darbību. Jūs meklējat specifiskus modeļus vairākās jomās.

1. Procesu aktivitāte

Izmantojiet Process Monitor un Process Hacker, lai atbildētu:

2. Failu sistēmas modifikācijas

Izmantojiet ProcMon un savu Regshot salīdzinājumu, lai atbildētu:

3. Reģistra izmaiņas

Windows reģistrs ir biežs ļaundabīgo programmatūru mērķis. Izmantojiet ProcMon un Regshot, lai meklētu:

4. Tīkla komunikācijas

Programmā Wireshark filtrējiet trafiku, kas nāk no jūsu VM. Pajautājiet sev:

4. fāze: Pēcpalaišanas analīze un tīrīšana

  1. Pārtraukt tveršanu: Kad uzskatāt, ka ļaunprogrammatūra ir pabeigusi savas primārās darbības, pārtrauciet tveršanu programmās ProcMon un Wireshark.
  2. Veikt gala momentuzņēmumu: Uzņemiet "2nd shot" (otro uzņēmumu) programmā Regshot un palaidiet salīdzinājumu, lai ģenerētu kārtīgu ziņojumu par visām failu sistēmas un reģistra izmaiņām.
  3. Analizēt un dokumentēt: Saglabājiet žurnālus no visiem saviem rīkiem. Korelējiet notikumus un izveidojiet ļaunprogrammatūras darbību laika grafiku. Dokumentējiet visus atklātos IOC.
  4. ATGRIEZT VM SĀKOTNĒJĀ STĀVOKLĪ: Tas nav apspriežams. Kad jūsu dati ir droši eksportēti, atgrieziet VM tās tīrajā momentuzņēmumā. Neizmantojiet atkārtoti inficētu VM.

Kaķa un peles spēle: ļaunprogrammatūras izvairīšanās tehniku pārvarēšana

Ļaunprogrammatūru autori nav naivi. Viņi zina par dinamisko analīzi un aktīvi iebūvē funkcijas, lai to atklātu un no tās izvairītos. Būtiska analītiķa darba daļa ir atpazīt un apiet šīs tehnikas.

Pretsmilškastes un pret-VM atklāšana

Ļaunprogrammatūra var pārbaudīt pazīmes, kas liecina, ka tā darbojas virtualizētā vai automatizētā vidē. Izplatītākās pārbaudes ietver:

Analītiķa atbilde: Nostipriniet savu VM, lai tā vairāk izskatītos pēc reāla lietotāja datora. Šo procesu sauc par "anti-anti-VM" vai "anti-anti-sandbox", un tas ietver VM procesu pārdēvēšanu, acīmredzamu reģistra atslēgu tīrīšanu un skriptu izmantošanu, lai imitētu lietotāja aktivitāti.

Pretatkļūdošana

Ja ļaunprogrammatūra atklāj atkļūdotāju, kas pievienots tās procesam, tā var nekavējoties iziet vai mainīt savu uzvedību, lai maldinātu analītiķi. Tā var izmantot Windows API zvanus, piemēram, `IsDebuggerPresent()`, vai sarežģītākas viltības, lai atklātu atkļūdotāja klātbūtni.

Analītiķa atbilde: Izmantojiet atkļūdotāju spraudņus vai modificētus atkļūdotājus, kas paredzēti, lai slēptu savu klātbūtni no ļaunprogrammatūras.

Uz laiku balstīta izvairīšanās

Daudzām automatizētām smilškastēm ir ierobežots darbības laiks (piemēram, 5-10 minūtes). Ļaunprogrammatūra var to izmantot, vienkārši "aizejot gulēt" uz 15 minūtēm pirms sava kaitīgā koda izpildes. Līdz brīdim, kad tā pamostas, automatizētā analīze ir beigusies.

Analītiķa atbilde: Manuālās analīzes laikā jūs varat vienkārši pagaidīt. Ja jums ir aizdomas par miega funkcijas izsaukumu, varat izmantot atkļūdotāju, lai atrastu miega funkciju un modificētu to, lai tā nekavējoties atgrieztos, vai izmantot rīkus, lai manipulētu ar VM sistēmas pulksteni un paātrinātu laiku.

Pūļu mērogošana: manuālā vs. automatizētā dinamiskā analīze

Iepriekš aprakstītais manuālais process nodrošina neticamu dziļumu, bet tas nav mērogojams, kad jātiek galā ar simtiem aizdomīgu failu dienā. Tieši šeit palīdz automatizētās smilškastes.

Automatizētās smilškastes: mēroga spēks

Automatizētās smilškastes ir sistēmas, kas automātiski izpilda failu instrumentētā vidē, veic visus mūsu apspriestos uzraudzības soļus un ģenerē visaptverošu ziņojumu. Populāri piemēri ietver:

Priekšrocības: Tās ir neticami ātras un efektīvas liela apjoma paraugu šķirošanai, sniedzot ātru spriedumu un bagātīgu IOC ziņojumu.

Trūkumi: Tās ir galvenais mērķis iepriekš minētajām izvairīšanās tehnikām. Sarežģīta ļaunprogrammatūra var atklāt automatizēto vidi un uzrādīt nekaitīgu uzvedību, kas noved pie kļūdaini negatīva rezultāta.

Manuālā analīze: analītiķa pieskāriens

Šis ir detalizētais, praktiskais process, uz kuru mēs koncentrējāmies. To vada analītiķa pieredze un intuīcija.

Priekšrocības: Tā piedāvā vislielāko analīzes dziļumu. Prasmīgs analītiķis var atpazīt un apiet izvairīšanās tehnikas, kas apmānītu automatizētu sistēmu.

Trūkumi: Tā ir ārkārtīgi laikietilpīga un nav mērogojama. Tā ir vislabāk piemērota augstas prioritātes paraugiem vai gadījumiem, kad automatizētā analīze ir bijusi neveiksmīga vai sniegusi nepietiekamu informāciju.

Labākā pieeja mūsdienu Drošības operāciju centrā (SOC) ir daudzpakāpju: izmantot automatizāciju visu paraugu sākotnējai šķirošanai un nodot interesantākos, izvairīgākos vai kritiskākos paraugus manuālai padziļinātai analīzei.

Visu apvienojot: dinamiskās analīzes loma mūsdienu kiberdrošībā

Dinamiskā analīze nav tikai akadēmisks vingrinājums; tas ir mūsdienu aizsardzības un uzbrukuma kiberdrošības pamatpīlārs. Droši detonējot ļaunprogrammatūru un novērojot tās uzvedību, mēs pārveidojam noslēpumainu draudu par zināmu lielumu. Mūsu iegūtie IOC tiek tieši ievadīti ugunsmūros, ielaušanās atklāšanas sistēmās un galapunkta aizsardzības platformās, lai bloķētu turpmākus uzbrukumus. Mūsu ģenerētie uzvedības ziņojumi informē incidentu reaģētājus, ļaujot viņiem efektīvi meklēt un izskaust draudus no saviem tīkliem.

Ainava nepārtraukti mainās. Tā kā ļaunprogrammatūra kļūst arvien izvairīgāka, mūsu analīzes tehnikām ir jāattīstās līdz ar to. Neatkarīgi no tā, vai esat topošais SOC analītiķis, pieredzējis incidentu reaģētājs vai mērķtiecīgs draudu pētnieks, dinamiskās analīzes principu apgūšana ir būtiska prasme. Tā dod jums iespēju pāriet no vienkāršas reaģēšanas uz brīdinājumiem uz proaktīvu ienaidnieka izpratni, pa vienai detonācijai.

Ļaunprogrammatūras analīzes atklāšana: padziļināts ieskats dinamiskās analīzes tehnikās | MLOG